End-User License Agreement

IMPL 1.9 (Industrial Modeling & Programming Language)
Copyright (c) 2012-2025 Industrial Algorithms Limited

Industrial Algorithms Limited (IAL) develops and deploys the specialized engineering industrial software platform known as the Industrial Modeling & Programming Language (IMPL).  IAL provides the Process Industries with both a structural (flowsheet-based) and semantic (formulation-based) language to quickly and easily model and solve industrial-scale discrete, nonlinear and dynamic (DND) optimization and estimation problems capturing significant benefits or payback which would otherwise be unrealized.  IMPL can be implemented in both off-line and on-line environments for design, planning, scheduling, coordinating and control as well as for reconciling, regressing, monitoring, accounting and backcasting of past and present performance.  Most community and commercial LP, QP, MILP and NLP solvers are linked to IMPL to provide fast and reliable optimization and estimization in order to make better decisions using better data at any level of complexity, functionality and hierarchy whilst mitigating uncertainty. 

IMPL(c) is a state-of-the-art, sophisticated and specialized proprietary industrial software platform (closed-source) based on our Unit-Operation-Port-State Superstructure and our Quantity-Logic-Quality Phenomena (UOPSS-QLQP(c), UQF(c)) to enable the modeling and solving of industrial-scale (size and scope) discrete, nonlinear and dynamic (DND) optimization, estimization and simulation problems found in both the Batch and Continuous Process Industries.  IMPL is suitable to support the modeling and solving of design, planning, scheduling, coordinating, production, process, operations optimization and control problems as well as parameter identification, estimation with constraints and data reconciliation problems.  IMPL includes links to various community and commercial LP, QP, MILP and NLP solvers.  It should be emphasized that IMPL is specialized engineering-based software and cannot be developed nor deployed (implemented, used, etc.) for any actual or physical system without the approval, permission and full commercial license from Industrial Algorithms Limited.  

IMPL Community Solvers Link:

This license of IMPL includes the links to the community or open-source solvers COINMP, GLPK, LPSOLVE, HIGHS and SCIP for solving what IMPL calls Quantity (LP) and Logistics (MILP) problems.  These solvers are also embedded into IMPL's NLP solver called SLPQPE (Successive Linear Programming and Quadratic Programming Engine) for solving Quality problems.  In addition, this free trial IMPL license includes IPOPT for NLP solving as well.  Please refer to the specific community solver's end user license agreements (EULA) for its use restrictions, distribution, warranties, limitations, copyright, etc. before use.

IMPL Commercial Solvers Link (CSL):

This license of IMPL includes the links to the commercial solvers CPLEX, GUROBI, LINDO, OPTONOMY, XPRESS, MOSEK, COPT, etc.  If the user has their own separate license for one of these commercial solvers then this free trial license of IMPL can use these solvers.  Please refer to the specific commercial solver's end user license agreements (EULA) for its use restrictions, distribution, warranties, limitations, copyright, etc. before use.  The user should be made aware that the commercial solvers are orders-of-magnitude faster and more reliable on industrial-scale problems compared to the speed and robustness of the community solvers.

IMPL Computer Programming Link (CPL) / Software Development Kit (SDK):

This license of IMPL includes IMPL's computer programming link (CPL) referred to as our Industrial Programming Language (IPL) (see IMPL's dynamic link or shared library called the IMPL Interacter) to integrate IMPL with any computer programming language such as C, C++, Fortran, Java, C#, Excel/VBA, VB.Net, Python, Julia, R and Matlab.

This license of IMPL also includes our Industrial Modeling and Programming Code (IMPC) for the ad hoc, bespoke and/or custom development and deployment programming code by the user, modeler or analyst specifically in Intel Fortran.

IMPL Database Container Link (DCL) (Not Available):

*** END USER LICENSE AGREEMENT ***

IMPORTANT: PLEASE READ THIS LICENSE CAREFULLY BEFORE COPYING, INSTALLING OR USING THIS SOFTWARE.

1. LICENSE

By receiving, opening the file package, and/or using IMPL ("Software") containing this software, you agree that this End User License Agreement (EULA) is a legally binding and valid contract and agree to be bound by it.  You agree to abide by the intellectual property laws and all of the terms and conditions of this Agreement.

Subject to the terms of this Agreement, Industrial Algorithms Limited grants to you a limited, non-exclusive, non-transferable license, without right to sub-license, to use IMPL in accordance with this Agreement.  Industrial Algorithms Limited does not transfer the title of IMPL to you; the license granted to you is not a sale. This agreement is a binding legal agreement between Industrial Algorithms Limited and the purchasers or users of IMPL.

If you do not agree to be bound by this agreement, remove IMPL from your computer now and, if applicable, promptly return to Industrial Algorithms Limited by mail any copies of IMPL and related documentation and packaging in your possession.

2. DISTRIBUTION

IMPL, its license and any accompanying materials such as manuals, code, examples, etc. herein granted shall not be copied, shared, distributed, re-sold, offered for re-sale, transferred or sub-licensed in whole or in part except that you may make one copy for archive purposes only.  For information about redistribution of IMPL contact Industrial Algorithms Limited.

3. USER AGREEMENT

3.1 USE

Your license to use IMPL is limited to the number of licenses purchased by you either individually or by your company. You shall not allow others to use, copy or evaluate copies of IMPL.

3.2 USE RESTRICTIONS

You shall use IMPL in compliance with all applicable laws and not for any unlawful purpose. Without limiting the foregoing, use, display or distribution of IMPL together with material that is pornographic, racist, vulgar, obscene, defamatory, libelous, abusive, promoting hatred, discriminating or displaying prejudice based on religion, ethnic heritage, race, sexual orientation or age is strictly prohibited.

Each licensed copy of IMPL may be used on one single computer location by one user. Use of IMPL means that you have loaded, installed, or run IMPL on a computer or similar device.  If you install IMPL onto a multi-user platform, server or network, each and every individual user of IMPL must be licensed separately.

You may make one copy of IMPL for backup purposes, providing you only have one copy installed on one computer being used by one person.  Other users may not use your copy of IMPL.  The assignment, sublicense, networking, sale, or distribution of copies of IMPL are strictly forbidden without the prior written consent of Industrial Algorithms Limited.  It is a violation of this agreement to assign, sell, share, loan, rent, lease, borrow, network or transfer the use of IMPL.  If any person other than yourself uses IMPL registered in your name, regardless of whether it is at the same time or different times, then this agreement is being violated and you are responsible for that violation.

3.3 COPYRIGHT RESTRICTION

This software contains copyrighted material, trade secrets and other proprietary material. You shall not, and shall not attempt to, modify, reverse engineer, disassemble or decompile IMPL including any of its input and output data files and programming interfaces.  Nor can you create any derivative works or other works that are based upon or derived from IMPL in whole or in part.

Industrial Algorithms Limited's name, logo and graphics file that represents IMPL shall not be used in any way to promote products developed with IMPL. Industrial Algorithms Limited retains sole and exclusive ownership of all right, title and interest in and to IMPL and all Intellectual Property rights relating thereto.

Copyright law and international copyright treaty provisions protect all parts of IMPL, products and services. No program, code, part, image, audio sample, or text may be copied or used in any way by the user except as intended within the bounds of the single user program.  All rights not expressly granted hereunder are reserved for Industrial Algorithms Limited.

3.4 LIMITATION OF RESPONSIBILITY

You will indemnify, hold harmless, and defend Industrial Algorithms Limited, its employees, agents and distributors against any and all claims, proceedings, demand and costs resulting from or in any way connected with your use of Industrial Algorithms Limited's software.

In no event (including, without limitation, in the event of negligence) will either party, its employees, agents or distributors be liable for the other party any consequential, incidental, indirect, special or punitive damages whatsoever (including, without limitation, damages for loss of profits, loss of use, business interruption, loss of information or data, or pecuniary loss), in connection with or arising out of or related to this Agreement, IMPL or the use or inability to use IMPL or the furnishing, performance or use of any other matters hereunder whether based upon contract, tort or any other theory including negligence.

Industrial Algorithms Limited's entire liability, without exception, is limited to the customers' reimbursement of the purchase price of the software (maximum being the lesser of the amount paid by you and the suggested retail price as listed by Industrial Algorithms Limited) in exchange for the return of the product, all copies, registration papers and manuals, and all materials that constitute a transfer of license from the customer back to Industrial Algorithms Limited.

3.5 WARRANTIES

Industrial Algorithms Limited makes no representation or warranties in respect of this software and expressly excludes all other warranties, expressed or implied, oral or written, including, without limitation, any implied warranties of merchantable quality or fitness for a particular purpose.  Industrial Algorithms Limited also does not warrant that its software is free from defects, or that any technical or support services provided by Industrial Algorithms Limited will correct any defects which might exist.

3.6 GOVERNING LAW

This Agreement shall be governed by the law of the Canada applicable therein.  UNLESS another mutually agreed upon provision has been specified in the purchasing documentation for arbitration and/or litigation purposes. You hereby irrevocably attorn and submit to the non-exclusive jurisdiction of the courts of Canada therefrom.  If any provision shall be considered unlawful, void or otherwise unenforceable, then that provision shall be deemed severable from this License and not affect the validity and enforceability of any other provisions.

3.7 TERMINATION

Any failure to comply with the terms and conditions of this Agreement will result in automatic and immediate termination of this license. Upon termination of this license granted herein for any reason, you agree to immediately cease use of IMPL and destroy all copies of IMPL supplied under this Agreement. The financial obligations incurred by you shall survive the expiration or termination of this license.

4. DISCLAIMER OF WARRANTY

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT.  IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  THIS DISCLAIMER CONCERNS ALL FILES GENERATED AND EDITED BY THIS SOFTWARE AS WELL.  THE USER MUST ASSUME THE ENTIRE RISK OF USING THIS SOFTWARE.

5. PRIVACY AND CONSENT OF USE OF DATA

You agree that Industrial Algorithms Limited may collect and use information gathered in any manner as part of the product support services provided to you, if any, related to IMPL. Industrial Algorithms Limited may also use this information to provide notices to you which may be of use or interest to you.

6. UNAUTHORISED USE

THIS SOFTWARE IS NOT DESIGNED, INTENDED OR AUTHORISED FOR USE IN ANY TYPE OF SYSTEM OR APPLICATION IN WHICH THE FAILURE OF THE SOFTWARE COULD CREATE A SITUATION WHERE PERSONAL INJURY OR DEATH MAY OCCUR OR DAMAGE TO ANY PROPERTY MAY OCCUR IN ANYWAY. 

Should you use the software for any such unintended or unauthorised use, you hereby indemnify, defend and hold Industrial Algorithms Limited and its officers harmless against all claims, costs, damages, and expenses and reasonable attorney fees arising out of, directly or indirectly, such use and any claim of product liability, personal injury or death associated with such unintended or unauthorised use, even if such claim alleges that Industrial Algorithms Limited was negligent regarding the design or manufacture of the software.

Furthermore, this software cannot be relied on as the sole basis to model and solve any problem or implement any design or application, whether in an on-line (direct) or off-line (indirect) environment, whose incorrect solution or implementation could result in injury to person or property.  If a program is employed in such a manner, it is at the licensee's own risk and Industrial Algorithms Limited explicitly disclaims all liability for such misuse.